package com.kgc.itrip.service;

import com.kgc.itrip.common.Page;
import com.kgc.itrip.pojo.ItripHotelOrder;
import com.kgc.itrip.pojo.ItripUser;
import com.kgc.itrip.vo.order.ItripAddHotelOrderVO;
import com.kgc.itrip.vo.order.ItripListHotelOrderVO;
import com.kgc.itrip.vo.order.ItripModifyHotelOrderVO;
import com.kgc.itrip.vo.order.ItripPersonalOrderRoomVO;

import java.util.List;
import java.util.Map;

/**
* Created by shang-pc on 2015/11/7.
*/
public interface ItripHotelOrderService {

    public ItripHotelOrder getItripHotelOrderById(Long id)throws Exception;

    public List<ItripHotelOrder> getItripHotelOrderListByMap(Map<String,Object> param)throws Exception;

    public Integer getItripHotelOrderCountByMap(Map<String,Object> param)throws Exception;

    public Integer itriptxAddItripHotelOrder(ItripHotelOrder itripHotelOrder)throws Exception;

    public Integer itriptxModifyItripHotelOrder(ItripHotelOrder itripHotelOrder)throws Exception;

    public Integer itriptxDeleteItripHotelOrderById(Long id)throws Exception;

    public Page<ItripListHotelOrderVO> queryItripHotelOrderPageByMap(Map<String,Object> param, Integer pageNo, Integer pageSize)throws Exception;
    boolean getValidateRoomStore(Map<String, Object> params)throws Exception;
    Integer getHotelRoomStoreByCondition(Map<String, Object> params)throws Exception;
    Map<String, Object> itriptxCreateItripHotelOrder(ItripAddHotelOrderVO itripAddHotelOrderVO, ItripUser user, String token) throws Exception;

    ItripPersonalOrderRoomVO queryPersonalOrderRoomInfoByOrderId(Long id) throws Exception;

    boolean getIsSupportOffLinePayByOrderId(Long id)throws Exception;

    boolean itriptxModifyItripHotelOrder(ItripModifyHotelOrderVO itripModifyHotelOrderVO,ItripUser itripUser)throws Exception;

}
